const EventEmitter = require('events')

// 创建发射器
const emitter = new EventEmitter()

// 监听某一个事件
// on: alias addListener
emitter.once('click', (args) => {
  console.log('listener cick 1', args)
})

const listener2 = (args) => {
  console.log('listener cick 2', args)
}

emitter.on('click', listener2)

emitter.prependOnceListener('scroll', (args) => {
  console.log('listener cick 3', args)
})

// 发出一个事件
setTimeout(() => {
  emitter.emit('click', 'lyc', 'test')
  emitter.emit('click', 'lyc', 'test')
  console.log(emitter.eventNames())
  emitter.removeAllListeners('scroll')
  console.log(emitter.eventNames())
}, 2000)